a28fc525bd718d70f92884173ee30cda043a6a25,src/main/java/hex/Trainer.java,Threaded,Threaded,#Layer[]#number#Key#,149
Before Change
final AtomicLong _processed = new AtomicLong();
public Threaded(Layer[] ls, double epochs, final Key job) {
_trainers = new Base[Runtime.getRuntime().availableProcessors()];
_threads = new Thread[_trainers.length];
_stepsPerThread = (long) (epochs * ((Input) ls[0])._len / _threads.length);
_resume = new CyclicBarrier(_threads.length + 1);
for( int t = 0; t < _trainers.length; t++ ) {
Layer[] clones = new Layer[ls.length];
After Change
final AtomicLong _processed = new AtomicLong();
public Threaded(Layer[] ls, double epochs, final Key job) {
final int num_threads = Runtime.getRuntime().availableProcessors();
_trainers = new Base[num_threads];
_threads = new Thread[num_threads];
_stepsPerThread = (long) (epochs * ((Input) ls[0])._len / num_threads);